package com.jieao.content.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jieao.content.domain.Catalog;
import com.jieao.content.dto.CatalogDto;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface CatalogMapper extends BaseMapper<Catalog> {

    List<CatalogDto> selectCatalogList(Catalog catalog);

    /**
     * 修改子元素关系
     * @param catalogs 子元素
     * @return 结果
     */
    int updateCatalogChildren(@Param("catalogs") List<CatalogDto> catalogs);


    /**
     * 根据ID查询所有子目录
     * @param catalogId 目录ID
     * @return 目录列表
     */
    List<CatalogDto> selectChildrenCatalogById(@Param("catalogId") Long catalogId);

    int selectCatalogCount(@Param("catalogId") Long catalogId);

    CatalogDto selectCatalogById(@Param("catalogId") Long catalogId);
}
